Improved loop unwinding in ESBMC 2.1 (Competition Contribution)
نویسندگان
چکیده
We implement an alternative loop unwinding strategy for ESBMC at the GOTO level. This substantially improves the reliability of unwinding nested loops.
منابع مشابه
ESBMC 1.22 - (Competition Contribution)
We have implemented an improved memory model for ESBMC which better takes into account C’s memory alignment rules and optimizes the generated SMT formulae. This simultaneously improves ESBMC’s precision and performance.
متن کاملContext-Bounded Model Checking with ESBMC 1.17 - (Competition Contribution)
ESBMC is a context-bounded symbolic model checker for singleand multi-threaded ANSI-C code. It converts the verification conditions using different background theories and passes them directly to an SMT solver.
متن کاملHandling Unbounded Loops with ESBMC 1.20 - (Competition Contribution)
We extended ESBMC to exploit the combination of context-bounded symbolic model checking and k-induction to prove safety properties in singleand multi-threaded ANSI-C programs with unbounded loops. We now first try to verify by induction that the safety property holds in the system. If that fails, we search for a bounded reachable state that constitutes a counterexample.
متن کاملMU-CSeq 0.3: Sequentialization by Read-Implicit and Coarse-Grained Memory Unwindings - (Competition Contribution)
We describe a new CSeq module that implements improved algorithms for the verification of multi-threaded C programs with dynamic thread creation. It is based on sequentializing the programs according to a guessed sequence of write operations in the shared memory (memory unwinding, MU). The original algorithm (implemented in MU-CSeq 0.1) stores the values of all shared variables for each write (...
متن کاملCSeq: A Sequentialization Tool for C - (Competition Contribution)
Sequentialization translates concurrent programs into equivalent nondeterministic sequential programs so that the different concurrent schedules no longer need to be handled explicitly. It can thus be used as a concurrency preprocessor for many sequential program verification techniques. CSeq implements sequentialization for C and uses ESBMC as sequential verification backend [5].
متن کامل